State the Pin Comment as the Release Tag and Define $/ - #1885
Conversation
The action pinning rule prescribed a `# vX.Y.Z` comment, which a pin to a repository whose release tags carry no `v` cannot honor without naming a tag that does not exist. State the comment as the release tag at the pinned SHA, spelled as the referenced repository publishes it, and bring WORKFLOW.md D9.1 into agreement. Both statements also exempted a `$/` reference without saying what it is, so name it as GitHub's self-repository path syntax, resolved at the containing workflow file's own commit. Closes on promotion: #1805 Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Apply the release-tag spelling rule to the major-only comment too, drop an unverifiable Dependabot rationale, use a constructed bare tag in the example, scope the `$/` definition to a workflow file, and update the prose-lint test docstring that restated the old rule. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: ptr727/ProjectTemplate/.coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: ⛔ Files ignored due to path filters (3)
📒 Files selected for processing (4)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe workflow guidance now requires SHA-pin comments to use the referenced repository’s exact release-tag spelling. It clarifies that ChangesWorkflow pinning guidance
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change clarifies workflow pinning guidance without changing test behavior; the generated copies and their digest are consistent. No actionable merge risk remains. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Copilot review overview
🟢 Approval recommended
The changes consistently update the documented contract and its generated copies without introducing behavioral code changes or internal inconsistencies.
Review effort: Lite
Findings: None
What changed in this PR
This PR updates the fleet workflow pinning documentation to require that the trailing pin comment match the referenced repository’s published release tag spelling (including repositories whose tags do not use a v prefix), and it defines the previously undocumented $/ self-repository uses: syntax. It then propagates the updated contract wording to the workflow CI contract reference copies and refreshes a prose-lint test docstring that referenced the old rule.
Changes:
- Update
GOVERNANCE.mdandWORKFLOW.mdto require release-tag-accurate pin comments (instead of prescribingvX.Y.Zunconditionally) and to define$/. - Regenerate/refresh the
workflow-ci-contractD9.1 reference text in the skill distribution copies and update the corresponding source digest. - Adjust a prose-lint test docstring to reflect the broadened pin-comment rule.
| File | Description |
|---|---|
| WORKFLOW.md | Updates D9.1 to require a release-tag-accurate comment and defines $/ for workflow-file self-repo resolution. |
| scripts/tests/test_prose_lint.py | Updates the docstring describing the pin-comment rule so it no longer implies only v-prefixed tags. |
| GOVERNANCE.md | Refines the Action pinning rule to require comments that match the upstream’s tag spelling, and defines $/ in workflow files. |
| .github/skills/workflow-ci-contract/references/d-guarantees.md | Regenerated skill copy reflecting the updated D9.1 wording. |
| .claude-plugin/fleet-skills/skills/workflow-ci-contract/references/d-guarantees.md | Regenerated plugin skill copy reflecting the updated D9.1 wording. |
| .claude-plugin/fleet-skills/.source-digests/workflow-ci-contract | Updates the recorded source digest to match the regenerated workflow-ci-contract content. |
| .agents/skills/workflow-ci-contract/references/d-guarantees.md | Updates the skill source reference text for D9.1 to match the new contract wording. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
@coderabbitai review |
✅ Action performedReview finished.
|
…and Overnight Fixes to Main (#1850) Promotes `develop` to `main`. ## Carried - #1846: exits `repo-config/configure.sh` early, writing nothing, for a repository whose registry `status` is `archived`. - #1848: fails the validator's C# unit test step when the run wrote no non-empty Cobertura report, clearing `./coverage` first. It declines #1134's `ref` input with evidence, since a bare checkout already validates `github.sha`, and D1.2 now says so. #1134's third gap moved to #1800. - #1851: asserts that the two planted registration defects are themselves reported. - #1854, #1858: correct #1846's test docstrings, which claimed the script makes no `gh` call before the archived check in cases where it does. Raised by Copilot on this pull request. - #1856: passes `--repo` on documented handoff commands and guards handoff reads against a full page, per #1847. - #1859, #1863: fall back to the default search path when `PATH` is unset in #1848's and #1846's test harnesses. Raised by Copilot on this pull request. - #1861: scopes `VerifyReferenceAotCompatibility` to an AOT publish in `dotnet-codestyle`, per #1857. - #1867: establishes the `PATH` order `tool_shadow_path` names, per #1644. - #1870: makes the installer's dirty-checkout tests independent of the real checkout's state, per #1641. - #1873: pins and decodes git's quoting in `repo_gate.py`'s `ls-files` read, per #1580 and #1872. - #1878: folds typographic punctuation in `pr_review.py reply --match`, per #1299. - #1883: routes `configure.sh`'s `ruleset_id()` through `jqr`, per #1253. - #1885: states the pin comment as the release tag and defines `$/`, per #1805. - #1888: distinguishes `./` from `$/` resolution in the pin rule's prose, per #1886. - #1893: drops the issue reference from `repo-config/README.md`'s archived-exemption note, which Copilot flagged on six rounds of this pull request. - #1895: describes IL3058 in `dotnet-codestyle` as a referenced assembly lacking `IsAotCompatible` metadata set to `true`, and drops the unversioned package examples. Raised by CodeRabbit on this pull request. Callers that pin a hub release get the new C# check on their next pin bump. A test project that runs `dotnet test --coverage` without writing a report now fails its step rather than passing silently. Closes #1134 Closes #1847 Closes #1857 Closes #1644 Closes #1641 Closes #1580 Closes #1872 Closes #1299 Closes #1253 Closes #1805 Closes #1886 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Bug Fixes** * Backlog counts and rankings now consistently exclude handoff issues, including those also marked blocked. * Repository configuration commands now exit without writing when a repository is archived. * Review-thread matching handles typographic punctuation, and no-match responses report the unresolved-thread count. * Tool setup handles PATH entries more precisely, and repository checks report unusual file paths without crashing. * **Reliability** * Validation now fails when C# or Python tests produce no coverage report. * Agent setup can use an explicit dirty-checkout override. * Workflow and repository guidance clarifies reference resolution, release-tag pinning, and AOT configuration. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
The action pinning rule in
GOVERNANCE.md"Workflow YAML Conventions" prescribed a# vX.Y.Zcomment, which a pin to a repository whose release tags carry novcannot honor without naming a tag that does not exist. It also exempted a$/reference without saying what$/is.$/as GitHub's workflow-file syntax for a path in the repository holding that file, resolved at that file's own commit.WORKFLOW.mdD9.1 into agreement, regenerate theworkflow-ci-contractinclude copies, and update a prose-lint test docstring that restated the old rule.Closes on promotion: #1805
🤖 Generated with Claude Code
Summary by CodeRabbit
$/workflow references are resolved. Local and self-repository references still do not require a pin.dotnet/nbgv@masterexception.